package com.common.BearMethods;

import com.common.BearBean.AnaLyBean;
import com.common.BearBean.BaseListBean;
import com.common.BearBean.BoDuanBean;
import com.common.BearBean.BuHuoBean;
import com.common.BearBean.ChuZhiBean;
import com.common.BearBean.CommuniBean;
import com.common.BearBean.ContentDetailsBean;
import com.common.BearBean.DaoGouPKBean;
import com.common.BearBean.GuKeBiaoShiBean;
import com.common.BearBean.HtmlBean;
import com.common.BearBean.InOutBean;
import com.common.BearBean.JiFenListBean;
import com.common.BearBean.ManagecockpiBean;
import com.common.BearBean.MemberInfoBean;
import com.common.BearBean.MemberKpiBean;
import com.common.BearBean.MemberListBean;
import com.common.BearBean.OrderListInfo;
import com.common.BearBean.ProductKpiBean;
import com.common.BearBean.SaleKpiBean;
import com.common.BearBean.ShopBean;
import com.common.BearBean.ShopCategoryBean;
import com.common.BearBean.SomeMemberInfoBean;
import com.common.BearBean.UserBean;
import com.common.BearBean.VipUserInfo;
import com.common.Entity.JingPaiEntity;
import com.common.retrofit.entity.resultImpl.HttpRespBean;

import java.util.ArrayList;

import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import rx.Observable;

/**
 * Create by leo
 * 创建日期：2018/5/15
 * 描述：
 */

public interface BearService {


    @FormUrlEncoded
    @POST("jingpaiGoods")
    Observable<HttpRespBean<JingPaiEntity>> jingpaiGoods(@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") int uid
            , @Field("hashid") String hashid
            , @Field("gid") String gid
            , @Field("vid") String vid
            , @Field("fvid") String fvid
    );

    @FormUrlEncoded
    @POST("adminLogin")
    Observable<HttpRespBean<UserBean>> adminLogin (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("username") String username
            , @Field("password") String password
    );
    @FormUrlEncoded
    @POST("getShop")
    Observable<HttpRespBean<ArrayList<ShopBean>>> getShop  (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid

    );
    @FormUrlEncoded
    @POST("vipinfo")
    Observable<HttpRespBean<MemberInfoBean>> vipinfo   (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("clientcode") String clientcode
            , @Field("date_type") String date_type

    );
    @FormUrlEncoded
    @POST("manageCockpit")
    Observable<HttpRespBean<ManagecockpiBean>> manageCockpit    (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("begindate") String begindate
            , @Field("enddate") String enddate

    );

    @FormUrlEncoded
    @POST("targetAnalysis")
    Observable<HttpRespBean<ArrayList<AnaLyBean>>> targetAnalysis    (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("begindate") String begindate
            , @Field("enddate") String enddate
            , @Field("datatype") String datatype

    );

    @FormUrlEncoded
    @POST("saleKPI")
    Observable<HttpRespBean<SaleKpiBean>> saleKPI   (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("deptcode") String deptcode
            , @Field("begindate") String begindate
            , @Field("enddate") String enddate

    );
    @FormUrlEncoded
    @POST("vipKPI")
    Observable<HttpRespBean<MemberKpiBean>> vipKPI    (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("deptcode") String deptcode
            , @Field("begindate") String begindate
            , @Field("enddate") String enddate

    );

    @FormUrlEncoded
    @POST("category")
    Observable<HttpRespBean<ArrayList<ShopCategoryBean>>> category   (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid

    );
    @FormUrlEncoded
    @POST("getstate")
    Observable<HttpRespBean<ArrayList<BoDuanBean>>> getstate    (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid

    );


    @FormUrlEncoded
    @POST("goodKPI")
    Observable<HttpRespBean<ProductKpiBean>> goodKPI     (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("deptcode") String deptcode
            , @Field("begindate") String begindate
            , @Field("enddate") String enddate
            , @Field("typecode") String typecode
            , @Field("statecode") String statecode
            , @Field("years") String years
            , @Field("season") String season

    );

    @FormUrlEncoded
    @POST("buhuoProposal")
    Observable<HttpRespBean<ArrayList<BuHuoBean>>> buhuoProposal     (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("deptcode") String deptcode
            , @Field("begindate") String begindate
            , @Field("enddate") String enddate
            , @Field("typecode") String typecode
            , @Field("statecode") String statecode
            , @Field("years") String years
            , @Field("season") String season

    );

    @FormUrlEncoded
    @POST("analysis")
    Observable<HttpRespBean<ArrayList<InOutBean>>> analysis   (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid

    );

    @FormUrlEncoded
    @POST("daogouPK")
    Observable<HttpRespBean<DaoGouPKBean>> daogouPK     (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid

    );
    @FormUrlEncoded
    @POST("getH5")
    Observable<HttpRespBean<HtmlBean>> getH5      (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid

    );
    @FormUrlEncoded
    @POST("guideMaintain")
    Observable<HttpRespBean<Object>> guideMaintain      (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("faceid") String faceid
            , @Field("nickname") String nickname
            , @Field("goshop_num") String goshop_num

    );
    @FormUrlEncoded
    @POST("viplist")
    Observable<HttpRespBean<MemberListBean>> viplist     (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("page") int page
            , @Field("clientcode") String clientcode
            , @Field("search") String search
            , @Field("sort_type") String sort_type
            , @Field("screen_age") String screen_age
            , @Field("screen_registdate") String screen_registdate
            , @Field("screen_paydate") String screen_paydate
            , @Field("screen_money") String screen_money
            , @Field("screen_paynum") String screen_paynum
            , @Field("screen_score") String screen_score
            , @Field("screen_consultant") String screen_consultant
            , @Field("screen_notpayday") String screen_notpayday

    );

    @FormUrlEncoded
    @POST("vipUserInfo")
    Observable<HttpRespBean<SomeMemberInfoBean>> vipUserInfo    (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("vipcardid") String vipcardid

    );

    @FormUrlEncoded
    @POST("seeVipUser")
    Observable<HttpRespBean<VipUserInfo>> seeVipUser    (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("vipcardid") String vipcardid
            , @Field("deptcode") String deptcode

    );

    @FormUrlEncoded
    @POST("editVipUser")
    Observable<HttpRespBean<Object>> editVipUser     (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("vipcardid") String vipcardid
            , @Field("deptcode") String deptcode
            , @Field("customer_identity_ids") String customer_identity_ids
            , @Field("birthday") String birthday
            , @Field("occupation") String occupation
            , @Field("idcard") String idcard
            , @Field("home_address") String home_address
            , @Field("company_name") String company_name
            , @Field("faith") String faith
            , @Field("family_festival") String family_festival
            , @Field("remarks") String remarks
            , @Field("education") String education
            , @Field("language") String language
            , @Field("vehicle") String vehicle
            , @Field("like_topic") String like_topic
            , @Field("taboo_topic") String taboo_topic
            , @Field("like_smoke") String like_smoke
            , @Field("food_preference") String food_preference
            , @Field("family_information") String family_information
            , @Field("height") String height
            , @Field("figure") String figure
            , @Field("complexion") String complexion
            , @Field("jacket_size") String jacket_size
            , @Field("pants_size") String pants_size

            , @Field("shoes_size") String shoes_size
            , @Field("pants_length") String pants_length
            , @Field("like_color") String like_color
            , @Field("like_brand") String like_brand
            , @Field("waistline") String waistline
            , @Field("circumference") String circumference
            , @Field("consultant") String consultant
            , @Field("return_date") String return_date

    );

    @FormUrlEncoded
    @POST("getOrderList")
    Observable<HttpRespBean<ArrayList<OrderListInfo>>> getOrderList      (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("page") int page
            , @Field("vipcardid") String vipcardid
            , @Field("deptcode") String deptcode


    );
    @FormUrlEncoded
    @POST("getSSMoney")
    Observable<HttpRespBean<ArrayList<ChuZhiBean>>> getSSMoney       (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("page") int page
            , @Field("vipcardid") String vipcardid
            , @Field("deptcode") String deptcode


    );

    @FormUrlEncoded
    @POST("getScoreList")
    Observable<HttpRespBean<ArrayList<JiFenListBean>>> getScoreList        (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("page") int page
            , @Field("vipcardid") String vipcardid
            , @Field("deptcode") String deptcode


    );

    @FormUrlEncoded
    @POST("allLists")
    Observable<HttpRespBean<BaseListBean>> allLists     (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid
            , @Field("page") int page
            , @Field("type") int type

    );
    @FormUrlEncoded
    @POST("activityInfo")
    Observable<HttpRespBean<ContentDetailsBean>> activityInfo   (@Field("time") String time, @Field("hash") String hash
            , @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") int uid
            , @Field("hashid") String hashid
            , @Field("activity_id") String activity_id
            , @Field("page") int page

    );
    @FormUrlEncoded
    @POST("addComment")
    Observable<HttpRespBean<Object>> addComment    (@Field("time") String time, @Field("hash") String hash
            , @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") int uid
            , @Field("hashid") String hashid
            , @Field("activity_id") String activity_id
            , @Field("content") String content

    );
    @FormUrlEncoded
    @POST("getCustomerIdentity")
    Observable<HttpRespBean<ArrayList<GuKeBiaoShiBean>>> getCustomerIdentity    (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid


    );


    @FormUrlEncoded
    @POST("shopCommunicate")
    Observable<HttpRespBean<CommuniBean>> shopCommunicate      (@Field("time") String time, @Field("hash") String hash, @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") String uid
            , @Field("hashid") String hashid


    );

    @FormUrlEncoded
    @POST("setLikes")
    Observable<HttpRespBean<Object>> setLikes    (@Field("time") String time, @Field("hash") String hash
            , @Field("apiId") String apiId, @Field("terminal") String terminal
            , @Field("uid") int uid
            , @Field("hashid") String hashid
            , @Field("type") int type
            , @Field("activity_id") String activity_id


    );



}
